gusucode.com > ​数字信号处理,包括:各种现有信号及随机信号的输入,从文件读取数据的输入 > Digital Signal Matlab ex1/xcorrelation.m

    axes(handles.axes3);
Xaxis=str2num(get(handles.EditX,'String'));
Yaxis=str2num(get(handles.EditY,'String'));
fs=str2num(get(handles.EditSC_fs,'String'));
%x=-Xaxis:Xaxis;
global Signal;
y=Signal;
%Fs=500;%采样间隔为1/500;
%NFFT=1024;
%n=0:1/Fs:1;%对信号序列取(1-0)/1/Fs个点,这里是 501
%vx=randn(1,length(n));%高斯白噪声 501
%x=4*sin(2*pi*100*n)-2*sin(2*pi*10*n)+vx; %501
Cx=xcorr(y,'unbiased'); %1001
Cxk=fft(Cx,1024); %1024
Pxx=abs(Cxk); %1024
t=0:round(1024/2-1);%round表示四舍五入取整 512
k=t*fs/1024; %512
%k=str2num(get(handles.Edit_fm,'String'));
P=10*log(Pxx(t+1)); %512
plot(k,P); 
%axis([-Xaxis,Xaxis,-Yaxis,Yaxis]);
title('自相关函数法');